Linear Temporal Logic
   HOME

TheInfoList



OR:

In
logic Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the study of deductively valid inferences or logical truths. It examines how conclusions follow from premises based on the structure o ...
, linear temporal logic or linear-time temporal logic (LTL) is a modal
temporal logic In logic, temporal logic is any system of rules and symbolism for representing, and reasoning about, propositions qualified in terms of time (for example, "I am ''always'' hungry", "I will ''eventually'' be hungry", or "I will be hungry ''until'' I ...
with modalities referring to time. In LTL, one can encode
formulae In science, a formula is a concise way of expressing information symbolically, as in a mathematical formula or a ''chemical formula''. The informal use of the term ''formula'' in science refers to the general construct of a relationship betwe ...
about the future of paths, e.g., a condition will eventually be true, a condition will be true until another fact becomes true, etc. It is a fragment of the more complex CTL*, which additionally allows branching time and quantifiers. LTL is sometimes called propositional temporal logic (PTL). In terms of expressive power, LTL is a fragment of
first-order logic First-order logic, also called predicate logic, predicate calculus, or quantificational logic, is a collection of formal systems used in mathematics, philosophy, linguistics, and computer science. First-order logic uses quantified variables over ...
. LTL was first proposed for the
formal verification In the context of hardware and software systems, formal verification is the act of proving or disproving the correctness of a system with respect to a certain formal specification or property, using formal methods of mathematics. Formal ver ...
of computer programs by
Amir Pnueli Amir Pnueli (; April 22, 1941 – November 2, 2009) was an Israeli computer scientist and the 1996 Turing Award recipient. Biography Pnueli was born in Nahalal, in the British Mandate of Palestine (now in Israel) and received a Bachelor's degree ...
in 1977.


Syntax

LTL is built up from a finite set of
propositional variable In mathematical logic, a propositional variable (also called a sentence letter, sentential variable, or sentential letter) is an input variable (that can either be true or false) of a truth function. Propositional variables are the basic building ...
s ''AP'', the
logical operators In logic, a logical connective (also called a logical operator, sentential connective, or sentential operator) is a logical constant. Connectives can be used to connect logical formulas. For instance in the syntax of propositional logic, the ...
¬ and ∨, and the temporal
modal operator A modal connective (or modal operator) is a logical connective for modal logic. It is an operator which forms propositions from propositions. In general, a modal operator has the "formal" property of being non- truth-functional in the following se ...
s X (some literature uses O or N) and U. Formally, the set of LTL formulas over ''AP'' is inductively defined as follows: * if then ''p'' is an LTL formula; * if and are LTL formulas then , and are LTL formulas. X is read as next and U is read as until. Other than these fundamental operators, there are additional logical and temporal operators defined in terms of the fundamental operators, in order to write LTL formulas succinctly. The additional logical operators are ∧, →, ↔, true, and false. Following are the additional temporal operators. * G for always (globally) * F for finally * R for release * W for weak until * M for mighty release


Semantics

An LTL formula can be '' satisfied'' by an infinite sequence of truth valuations of variables in ''AP''. These sequences can be viewed as a word on a path of a
Kripke structure A Kripke structure is a variation of the transition system, originally proposed by Saul Kripke, used in model checking to represent the behavior of a system. It consists of a graph whose nodes represent the reachable states of the system and whose ...
(an ω-word over
alphabet An alphabet is a standard set of letter (alphabet), letters written to represent particular sounds in a spoken language. Specifically, letters largely correspond to phonemes as the smallest sound segments that can distinguish one word from a ...
2''AP''). Let ''w'' = a0,a1,a2,... be such an ω-word. Let ''w''(''i'') = ''ai''. Let ''w''i = ''ai'',''a''''i''+1,..., which is a suffix of ''w''. Formally, the satisfaction relation ⊨ between a word and an LTL formula is defined as follows: * ''w'' ⊨ ''p'' if ''p'' ∈ ''w''(0) * ''w'' ⊨ ¬ if ''w'' ⊭ * ''w'' ⊨ ∨ if ''w'' ⊨ or ''w'' ⊨ * if ''w''1 ⊨ (in the next time step must be true) * if there exists ''i'' ≥ 0 such that ''w''''i'' ⊨ and for all 0 ≤ ''k'' < i, ''w''''k'' ⊨ ( must remain true until becomes true) We say an ω-word ''w'' satisfies an LTL formula when ''w'' ⊨ . The
ω-language In formal language theory within theoretical computer science, an infinite word is an infinite-length sequence (specifically, an ω-length sequence) of symbols, and an ω-language is a set of infinite words. Here, ω refers to the first infinite o ...
''L''() defined by is , which is the set of ω-words that satisfy . A formula is ''satisfiable'' if there exist an ω-word ''w'' such that ''w'' ⊨ . A formula is ''valid'' if for each ω-word ''w'' over alphabet 2''AP'', we have ''w'' ⊨ . The additional logical operators are defined as follows: * ∧ ≡ ¬(¬ ∨ ¬) * → ≡ ¬ ∨ * ↔ ≡ ( → ) ∧ ( → ) * true ≡ ''p'' ∨ ¬''p'', where ''p'' ∈ ''AP'' * false ≡ ¬true The additional temporal operators R, F, and G are defined as follows: * R ≡ ¬(¬ U ¬) ( remains true until and including once becomes true. If never becomes true, must remain true forever. releases .) * (eventually becomes true) *G ≡ false R ≡ ¬F ¬ ( always remains true)


Weak until and strong release

Some authors also define a ''weak until'' binary operator, denoted W, with semantics similar to that of the until operator but the stop condition is not required to occur (similar to release). It is sometimes useful since both U and R can be defined in terms of the weak until: * * * The ''strong release'' binary operator, denoted M, is the dual of weak until. It is defined similar to the until operator, so that the release condition has to hold at some point. Therefore, it is stronger than the release operator. * The semantics for the temporal operators are pictorially presented as follows.


Equivalences

Let φ, ψ, and ρ be LTL formulas. The following tables list some of the useful equivalences that extend standard equivalences among the usual logical operators.


Negation normal form

All the formulas of LTL can be transformed into ''negation normal form'', where * all negations appear only in front of the atomic propositions, * only other logical operators true, false, ∧, and ∨ can appear, and * only the temporal operators X, U, and R can appear. Using the above equivalences for negation propagation, it is possible to derive the normal form. This normal form allows R, true, false, and ∧ to appear in the formula, which are not fundamental operators of LTL. Note that the transformation to the negation normal form does not blow up the length of the formula. This normal form is useful in translation from an LTL formula to a Büchi automaton.


Relations with other logics

LTL can be shown to be equivalent to the monadic first-order logic of order, FO mdash;a result known as Kamp's theorem— or equivalently to
star-free language In theoretical computer science and formal language theory, a regular language is said to be star-free if it can be described by a regular expression constructed from the letters of the alphabet, the empty word, the empty set symbol, all boolean o ...
s.
Computation tree logic Computation tree logic (CTL) is a branching-time logic, meaning that its model of time is a tree-like structure in which the future is not determined; there are different paths in the future, any one of which might be an actual path that is reali ...
(CTL) and linear temporal logic (LTL) are both a subset of CTL*, but are incomparable. For example, * No formula in CTL can define the language that is defined by the LTL formula F(G p). *No formula in LTL can define the language that is defined by the CTL formulas AG( p → (EXq ∧ EX¬q) ) or AG(EF(p)).


Computational problems

Model checking In computer science, model checking or property checking is a method for checking whether a finite-state model of a system meets a given specification (also known as correctness). This is typically associated with hardware or software syst ...
and satisfiability against an LTL formula are
PSPACE-complete In computational complexity theory, a decision problem is PSPACE-complete if it can be solved using an amount of memory that is polynomial in the input length (PSPACE, polynomial space) and if every other problem that can be solved in polynomial sp ...
problems. LTL synthesis and the problem of verification of games against an LTL winning condition is 2EXPTIME-complete.


Applications

;Automata-theoretic linear temporal logic model checking :LTL formulas are commonly used to express constraints, specifications, or processes that a system should follow. The field of model checking aims to formally verify whether a system meets a given specification. In the case of automata-theoretic model checking, both the system of interest and a specification are expressed as separate
finite-state machines A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
, or automata, and then compared to evaluate whether the system is guaranteed to have the specified property. In computer science, this type of model checking is often used to verify that an algorithm is structured correctly. :To check LTL specifications on infinite system runs, a common technique is to obtain a
Büchi automaton In computer science and automata theory, a deterministic Büchi automaton is a theoretical machine which either accepts or rejects infinite inputs. Such a machine has a set of states and a transition function, which determines which state the mach ...
that is equivalent to the model (accepts an ω-word precisely if it is the model) and another one that is equivalent to the negation of the property (accepts an ω-word precisely it satisfies the negated property) (cf.
Linear temporal logic to Büchi automaton In mathematics, the term ''linear'' is used in two distinct senses for two different properties: * linearity of a ''function'' (or '' mapping''); * linearity of a ''polynomial''. An example of a linear function is the function defined by f(x)=( ...
). In this case, if there is an overlap in the set of ω-words accepted by the two automata, it implies that the model accepts some behaviors which violate the desired property. If there is no overlap, there are no property-violating behaviors which are accepted by the model. Formally, the intersection of the two non-deterministic Büchi automata is empty if and only if the model satisfies the specified property. ;Expressing important properties in formal verification :There are two main types of properties that can be expressed using linear temporal logic:
safety Safety is the state of being protected from harm or other danger. Safety can also refer to the control of recognized hazards in order to achieve an acceptable level of risk. Meanings The word 'safety' entered the English language in the 1 ...
properties usually state that ''something bad never happens'' (G¬''ϕ''), while
liveness Properties of an execution of a computer program—particularly for concurrent and distributed systems—have long been formulated by giving safety properties ("bad things don't happen") and liveness properties ("good things do happen"). A progra ...
properties state that ''something good keeps happening'' (GF''ψ'' or G(''ϕ'' →F''ψ'')). For example, a safety property may require that an autonomous rover never drives over a cliff, or that a software product never allows a successful login with an incorrect password. A liveness property may require that the rover always continues to collect data samples, or that a software product repeatedly sends telemetry data. :More generally, safety properties are those for which every
counterexample A counterexample is any exception to a generalization. In logic a counterexample disproves the generalization, and does so rigorously in the fields of mathematics and philosophy. For example, the fact that "student John Smith is not lazy" is a c ...
has a finite prefix such that, however it is extended to an infinite path, it is still a counterexample. For liveness properties, on the other hand, every finite path can be extended to an infinite path that satisfies the formula. ;Specification language :One of the applications of linear temporal logic is the specification of
preference In psychology, economics and philosophy, preference is a technical term usually used in relation to choosing between alternatives. For example, someone prefers A over B if they would rather choose A than B. Preferences are central to decision the ...
s in the
Planning Domain Definition Language The Planning Domain Definition Language (PDDL) is an attempt to standardize Artificial Intelligence (AI) planning languages. It was first developed by Drew McDermott and his colleagues in 1998 mainly to make the 1998/2000 International Planning ...
for the purpose of
preference-based planning In artificial intelligence, preference-based planning is a form of automated planning and scheduling which focuses on producing plans that additionally satisfy as many user-specified preferences as possible. In many problem domains, a task can be a ...
.


Extensions

Parametric linear temporal logic extends LTL with variables on the until-modality.


See also

*
Action language In computer science, an action language is a language for specifying state transition systems, and is commonly used to create formal models of the effects of actions on the world. Action languages are commonly used in the artificial intelligence ...
* Metric temporal logic *
Safety and liveness properties Properties of an execution of a computer program—particularly for concurrent and distributed systems—have long been formulated by giving safety properties ("bad things don't happen") and liveness properties ("good things do happen"). A progra ...


References

{{reflist


External links


A presentation of LTL

Linear-Time Temporal Logic and Büchi AutomataLTL Teaching slides
of professor Alessandro Artale at the
Free University of Bozen-Bolzano The Free University of Bozen-Bolzano (Italian language, Italian: ''Libera Università di Bolzano'', German language, German: ''Freie Universität Bozen'', Ladin language, Ladin: ''Università Liedia de Bulsan'') is a university primarily loc ...

LTL to Buchi translation algorithms
a genealogy, from the website o
Spot
a library for model checking. Computer-related introductions in 1977 Temporal logic